#include <iostream>
#include <stdio.h>

using namespace std;
// 模板

// template <class T>
void show(char* a,int n){
    cout << "\nsize: " << n << endl;
    for(int i = 0; i < n; i++){
        cout << a[i];
        cout << ' ';
    }
    cout << endl;
}

char* add(const char* a,int len_a,const char* b,int len_b){
    char n3[len_a+len_b];
    for(int i = 0; i < len_a ; i++){
        n3[i] = a[i];
    }
    for(int i = 0; i < len_b; i++){
        n3[i+len_a-1] = b[i];
    }
    show(n3,len_a+len_b-1);
    return n3;
    
}

int main() {

    // 创建三种类型的数组
    bool a[]    = {1,0,1,0,1};
    int b[]     ={1,2,3,4,5,6,7,8,9,0};
    const char c[]    = "Hello,World!";
    const char d[]    = "By:Tymon.";

    // 一、显示 bool 数组
    // int size =  sizeof(a)/sizeof(a[0]);
    // show(a,size);
    int x = sizeof(c)/sizeof(c[0]);
    int y = sizeof(d)/sizeof(d[0]);
    show(add(c,x,d,y),x+y);
    // // 二、显示 int 数组
    // size =  sizeof(b)/sizeof(b[0]);
    // show(b,size);
    // // 三、显示 char 数组
    // size =  sizeof(c)/sizeof(c[0]);
    // show(c,size);

    return 0;

}